Order chat history consistently for clarification and streaming - #2829
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Coordinator cleanup: local and remote fe4cf5c agree, tracked state clean. Ignored inventory was .tmp/ plus generated backend bin/obj. Preserved .tmp/ordered-history-review.diff outside the removed checkout at .claude/local/milestone-20260909/preserved-2829/review-evidence/. Author full gate tool session 27893 completed exit 0 (9089 passed, 5 skipped), with no file-backed test log. Worker confirmed no remaining worktree process. Plain git worktree remove succeeded; remote source branch remains. Fresh Terra independently passed Domain 33, Application 91 and SQLite repository 2 tests. Hosted CI still pending; no merge claim. |
|
Delivery is now held for combined candidate #2830 at 3923500 on main06bd4d18e. It preserves the reviewed source commit, passed the full combined backend9096/5skip and frontend6243/3skip suites, browser SC-005, builds/lint/doc links, and fresh Terra integration review. Do not merge sources independently while the combined exact-base/head hosted gate qualifies. Once #2830 lands, coordinator will verify inclusion and reconcile these source PRs. Existing tracked MEDIUMs remain open; no new feature changes added. |
|
Delivered through #2830, merged as cca0716. Main tree c73859a9ba712192935fc13586260ab61a9fb22c exactly equals qualified39235004b; all three source heads are verified ancestors. GitHub automatically marked #2827/#2828/#2829 merged through preserved commits. Required ci-required.yml run34358736114 passed at the exact head/base, fresh Terra review passed and no unresolved threads remained. Tracked MEDIUMs remain follow-ups; no full parent-issue completion claim. |
Chat history loaded through EF relationship fixup can arrive in insertion order, causing clarification and streaming consumers to read the wrong last turn. Expose a chronological domain snapshot ordered by CreatedAt, with Id as a deterministic tie-breaker, so every consumer sees the same history. DTO mapping uses that ordered snapshot directly.
Refs #2004. This resolves the chronological read contract; it does not claim full issue completion or recover unrecorded causal order between identical timestamps.
Validation at fe4cf5c against 22fcac4:
dotnet test backend/Taskdeck.sln -c Release -m:1: 9089 passed, 5 skipped, exit 0 (author observed).Six files only; no schema/auth/provider or frontend changes. Canonical STATUS, MASTERPLAN and human-action file are unchanged; coordinator checkpoint records delivery state.